Visual Basic (Declaration) | |
---|---|
Public ReadOnly Property GetterInterceptor As PropertyInterceptor(Of TInstance,RelatedEntityList(Of TValue),NavigationEntityPropertyGetInterceptorArgs(Of TInstance,RelatedEntityList(Of TValue))) |
Visual Basic (Usage) | ![]() |
---|---|
Dim instance As NavigationListEntityProperty(Of TInstance,TValue) Dim value As PropertyInterceptor(Of TInstance,RelatedEntityList(Of TValue),NavigationEntityPropertyGetInterceptorArgs(Of TInstance,RelatedEntityList(Of TValue))) value = instance.GetterInterceptor |
C# | |
---|---|
public PropertyInterceptor<TInstance,RelatedEntityList<TValue>,NavigationEntityPropertyGetInterceptorArgs<TInstance,RelatedEntityList<TValue>>> GetterInterceptor {get;} |
C# | ![]() |
---|---|
public void Sample() { // Add a BeforeGet action to a GetterInterceptor: Employee.PropertyMetadata.DirectReports.GetterInterceptor.AddAction( PropertyInterceptorTiming.Before, TraceGetter); // Add a BeforeSet action to a SetterInterceptor (a SetterInterceptor is available // only for scalar and non-readonly navigation properties). Employee.PropertyMetadata..Manager.SetterInterceptor.AddAction( PropertyInterceptorTiming.Before, TraceSetter); // Get/set a few properties DomainModelEntityManager mgr = new DomainModelEntityManager(); Employee e = mgr.Employees.First(); e.Manager = null; var list = e.DirectReports; } public static void TraceGetter(IEntityPropertyGetInterceptorArgs args) { Console.WriteLine("getter called for " + args.EntityProperty.Name); } public static void TraceSetter(IEntityPropertySetInterceptorArgs args) { Console.WriteLine("setter called for " + args.EntityProperty.Name); } |
Use the GetterInterceptor to add custom BeforeGet and AfterGet interception actions to a property getter.
Target Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, Windows Vista, Windows Server 2008 family